package com.panfeng.xcloud.boss.provider.assets.service;

import com.panfeng.xcloud.boss.provider.dto.request.OperateBotReqDTO;
import com.panfeng.xcloud.common.core.web.vo.OrderDetailResponseVO;
import com.panfeng.xcloud.dao.assets.entity.CoinExchangeSet;

import java.math.BigDecimal;

public interface IExecuteOrderService {

    OrderDetailResponseVO chooseSendOrderHttp(OperateBotReqDTO operateBotReqDTO, Integer systemInnerType);

    void orderUpdateSellCreatedEventHandler(OrderDetailResponseVO orderDetail, OperateBotReqDTO operateBotReqDTO, Integer systemInnerType);

    void orderUpdateBuyEventHandler(OrderDetailResponseVO orderDetail, OperateBotReqDTO operateBotReqDTO, Integer systemInnerType);

    void orderUpdateSellTradeEventHandler(OrderDetailResponseVO orderDetail, OperateBotReqDTO operateBotReqDTO, Integer systemInnerType);

    void orderUpdateEventHandler(OrderDetailResponseVO orderDetail, OperateBotReqDTO operateBotReqDTO, Integer systemInnerType);

    CoinExchangeSet getQuanDefaultConfig(String direction);

    BigDecimal toSetOpenOrderAmount(OperateBotReqDTO operateBotReqDTO, BigDecimal amount);

}
